/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */



import java.util.ArrayList;
import java.util.Random;


public class Mazo {

    ArrayList<Carta> cartas = new ArrayList<Carta>();

    public Mazo() {

        for (int indice = 2; indice <= 10; ++indice) {

            for (int pal = 1; pal <= 4; pal++) {

                Carta carta = new Carta();
                carta.setValor(Integer.toString(indice));
                carta.setValorEntero(indice);

                switch (pal) {
                    case 1: {
                        carta.setPalo("Corazones");
                        cartas.add(carta);
                        break;
                    }
                    case 2: {
                        carta.setPalo("Diamante");
                        cartas.add(carta);
                        break;
                    }
                    case 3: {
                        carta.setPalo("Picas");
                        cartas.add(carta);
                        continue;
                    }
                    case 4: {
                        carta.setPalo("Treboles");
                        cartas.add(carta);
                        continue;
                    }
                    default:
                        System.out.println("Error: "+pal);
                        break;
                }
            }
        }

        //Agrego la JQK
        for (int indice = 1; indice <= 4; ++indice) {

            for (int pal = 1; pal <= 4; pal++) {

                Carta carta = new Carta();
                carta.setValorEntero(10);

                switch (indice) {
                    case 1:
                        carta.setValor("J");
                        break;
                    case 2:
                        carta.setValor("Q");
                        break;
                    case 3:
                        carta.setValor("K");
                        break;
                    case 4:
                        carta.setValor("A");
                        carta.setValorEntero(11);
                        break;

                }

                switch (pal) {
                    case 1: {
                        carta.setPalo("Corazones");
                        cartas.add(carta);
                        break;
                    }
                    case 2: {
                        carta.setPalo("Diamante");
                        cartas.add(carta);
                        break;
                    }
                    case 3: {
                        carta.setPalo("Picas");
                        cartas.add(carta);
                        break;
                    }
                    case 4: {
                        carta.setPalo("Treboles");
                        cartas.add(carta);
                        break;
                    }
                    default:
                        System.out.println("Error: "+pal);

                }
            }
        }
    }

    public Carta darCarta (){

        Carta nuevaCarta;

        Random numRandom = new Random();
        nuevaCarta = cartas.get(numRandom.nextInt(cartas.size()));
        cartas.remove(nuevaCarta); //Hay que validar que el mazo tenga cartas
        //System.out.println("Cartas en el mazo: "+cartas.size());

        return nuevaCarta;
    }

    public Mazo resetearMazo(){
        Mazo maso = new Mazo();
        return maso;
    }
}
